package com.sl.au.service;

import java.util.List;
import java.util.Map;

import com.sl.au.entity.ArchiveReportInfo;
import com.sl.au.entity.EventRegister;
import com.sl.au.entity.EventReport;
import com.sl.au.entity.EventTask;
import com.sl.au.repository.ArchiveReportInfoRepository;

public interface ArchiveReportInfoService extends BaseService {
	
	ArchiveReportInfoRepository getRepository();

	void saveMany(EventReport report, ArchiveReportInfo archiveReportInfo, EventTask eventTask);

	List<ArchiveReportInfo> initArchivedPageByKey(String key, int start, int length);

	List<ArchiveReportInfo> initArchivedPageNoKey(int start, int length);

	int getArchivedCount(String key);

	List<EventRegister> showDetailRegisters(String reportId, int start, int length);

	int showDetailRegistersCount(String reportId);
	
	List<Map<String, Object>> initArchivedPageByKeyAndRole(int start, int length, String roleId, String key, String orderName, String dir);
	
	int getArchivedCountByRole(String roleId, String key);
}
